GNOME Epiphany
Epiphany is the default web browser for the GNOME desktop. Artemis supports extracting a variety of artifacts from the browser. Currently artemis can extract:
- Browser history
- Cookies
- Last printed page
- Website permissions
- Last session info
Collection
You have to use the artemis api in order to collect Epiphany artifacts.
import { Epiphany } from "./artemis-api/src/linux/gnome/epiphany";
function main() {
const use_unfold = true;
// Enable optional Unfold parsing
const client = new Epiphany(use_unfold);
const data = client.history();
console.log(JSON.stringify(data));
}
main();
Output Structure
Depending on the the functions used will return the objects below:
export interface EpiphanyHistory {
target_url: string | null;
url_id: number;
target_host: number;
title: string | null;
sync_id: string | null;
visit_count: number;
typed_count: number;
last_visit_time: string;
thumbnail_update_time: string;
hidden_from_overview: boolean;
visit_type: VisitType;
referring_visit: string | null;
db_path: string;
unfold?: Url;
}
/**
* Similar format as `FirefoxCookies`
*/
export interface EpiphanyCookies {
id: number;
name: string | null;
value: string | null;
host: string | null;
path: string | null;
expiry: string | null;
last_accessed: string | null;
is_secure: boolean | null;
is_http_only: boolean | null;
same_site: boolean | null;
db_path: string;
}
export interface EpiphanyPermissions {
url: string;
permissions: Record<string, string>;
file_path: string;
}
export enum VisitType {
None = "None",
Link = "Link",
Typed = "Typed",
Bookmark = "Bookmark",
HomePage = "HomePage",
Unknown = "Unknown",
}
export interface EpiphanyPrint {
scale: number;
copies: number;
number: number;
reverse: boolean;
output: string;
page_set: string;
printer: string;
pages: string | number;
collate: boolean;
file_path: string;
}